package com.augurit.smartform.service;

import java.util.List;

import org.springside.modules.orm.Page;

import com.augurit.smartform.entity.SmPage;
import com.augurit.smartform.web.parser.form.SmPageForm;

public interface IPageMgmtService {
	/**
	 * 根据主键获取Form对象
	 */
	public SmPageForm get(Long id);
	
	/**
	 * 查询所有SMPAGE记录
	 * @param page
	 * @param form
	 * @return
	 */
	public Page<SmPageForm> findPage(Page<SmPageForm> page,SmPageForm form);
	
	/**
	 * 查询所有SMPAGE记录
	 * @param page
	 * @param form
	 * @return
	 * cuigeqiang
	 */
	public Page<SmPageForm> findPageWithTableInfo(Page<SmPageForm> page,SmPageForm form);
	
	/**
	 * 取得数据库相关联的页面
	 * @param id
	 * @return
	 * cuigeqiang
	 */
	public SmPageForm getDbRelationPage(Long id);
	
	/**
	 * 通过PAGEID和系统绝对路径删除相关的智能表单
	 * @param pageId
	 */
	public void deleteSmartForm(Long pageId,String absolutePath);
	
	/**
	 * 得到没有目录的页面
	 * @return
	 */
	public List<SmPageForm> getNoDirSmPages();
	
	/**
	 * 通过dirId查询SMPAGE列表
	 * @param pageId
	 * @return
	 * cuigeqiang
	 */
	public List<SmPageForm> getSmPageByDirId(Long dirId);
	
	/**
	 * 更新目录ID
	 * @param smPageId
	 * @param dirId
	 * cuigeqiang
	 */
	public void updateDirId(Long smPageId,Long dirId);
}
